<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libCZI: libCZI/libCZI_Metadata.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" async src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">libCZI
   </div>
   <div id="projectbrief">Reading CZI documents made easy</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('lib_c_z_i___metadata_8h_source.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">libCZI_Metadata.h</div>  </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">//******************************************************************************</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// </span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// libCZI is a reader for the CZI fileformat written in C++</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">// Copyright (C) 2017  Zeiss Microscopy GmbH</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">// </span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// This program is free software: you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">// it under the terms of the GNU General Public License as published by</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">// the Free Software Foundation, either version 3 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">// (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">// </span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">// This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">// but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">// GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">// </span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">// You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">// along with this program.  If not, see &lt;http://www.gnu.org/licenses/&gt;.</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment">// </span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">// To obtain a commercial version please contact Zeiss Microscopy GmbH.</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">// </span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment">//******************************************************************************</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;libCZI_DimCoordinate.h&quot;</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;libCZI_Pixels.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &lt;limits&gt;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &lt;functional&gt;</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacelib_c_z_i.html">libCZI</a></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_general_document_info.html">   36</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="structlib_c_z_i_1_1_general_document_info.html">GeneralDocumentInfo</a></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    {</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        <a class="code" href="structlib_c_z_i_1_1_general_document_info.html">GeneralDocumentInfo</a>() :<a class="code" href="structlib_c_z_i_1_1_general_document_info.html#a26ded0bae7ffb1bc68fef7f1862c0508">rating</a>(0) {}</div><div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_general_document_info.html#afc37e71ba6b59171c877c17749b91aa3">   39</a></span>&#160;        std::wstring <a class="code" href="structlib_c_z_i_1_1_general_document_info.html#afc37e71ba6b59171c877c17749b91aa3">name</a>;              </div><div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_general_document_info.html#ab35797e1b6c3a8e5c8476b43672180bc">   40</a></span>&#160;        std::wstring <a class="code" href="structlib_c_z_i_1_1_general_document_info.html#ab35797e1b6c3a8e5c8476b43672180bc">title</a>;             </div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_general_document_info.html#a2ac0606c9395217d63c586f9bd356f3e">   41</a></span>&#160;        std::wstring <a class="code" href="structlib_c_z_i_1_1_general_document_info.html#a2ac0606c9395217d63c586f9bd356f3e">userName</a>;          </div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_general_document_info.html#ad6c87c00c5039477b2887a2bd8099469">   42</a></span>&#160;        std::wstring <a class="code" href="structlib_c_z_i_1_1_general_document_info.html#ad6c87c00c5039477b2887a2bd8099469">description</a>;       </div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_general_document_info.html#a633f48b2bd3356c426a0716ffbae45ae">   43</a></span>&#160;        std::wstring <a class="code" href="structlib_c_z_i_1_1_general_document_info.html#a633f48b2bd3356c426a0716ffbae45ae">comment</a>;           </div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_general_document_info.html#adee12c915203b5bd17d150f362320e83">   44</a></span>&#160;        std::wstring <a class="code" href="structlib_c_z_i_1_1_general_document_info.html#adee12c915203b5bd17d150f362320e83">keywords</a>;          </div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_general_document_info.html#a26ded0bae7ffb1bc68fef7f1862c0508">   45</a></span>&#160;        <span class="keywordtype">int</span> <a class="code" href="structlib_c_z_i_1_1_general_document_info.html#a26ded0bae7ffb1bc68fef7f1862c0508">rating</a>;                     </div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_general_document_info.html#a831ea6520302e16ab56615c3aee316ec">   46</a></span>&#160;        std::wstring <a class="code" href="structlib_c_z_i_1_1_general_document_info.html#a831ea6520302e16ab56615c3aee316ec">creationDateTime</a>;  </div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    };</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_scaling_info.html">   50</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="structlib_c_z_i_1_1_scaling_info.html">ScalingInfo</a></div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    {</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        <a class="code" href="structlib_c_z_i_1_1_scaling_info.html">ScalingInfo</a>() : <a class="code" href="structlib_c_z_i_1_1_scaling_info.html#ad78c8dd0c50767ea6004f513379744a3">scaleX</a>(std::numeric_limits&lt;double&gt;::quiet_NaN()), <a class="code" href="structlib_c_z_i_1_1_scaling_info.html#a1e3eaed2c197331a7f47db7c6a89d930">scaleY</a>(std::numeric_limits&lt;double&gt;::quiet_NaN()), <a class="code" href="structlib_c_z_i_1_1_scaling_info.html#a51209385ef9ee539c5f1fad0a507f63b">scaleZ</a>(std::numeric_limits&lt;double&gt;::quiet_NaN()) {}</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_scaling_info.html#ad78c8dd0c50767ea6004f513379744a3">   53</a></span>&#160;        <span class="keywordtype">double</span> <a class="code" href="structlib_c_z_i_1_1_scaling_info.html#ad78c8dd0c50767ea6004f513379744a3">scaleX</a>;  </div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_scaling_info.html#a1e3eaed2c197331a7f47db7c6a89d930">   54</a></span>&#160;        <span class="keywordtype">double</span> <a class="code" href="structlib_c_z_i_1_1_scaling_info.html#a1e3eaed2c197331a7f47db7c6a89d930">scaleY</a>;  </div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_scaling_info.html#a51209385ef9ee539c5f1fad0a507f63b">   55</a></span>&#160;        <span class="keywordtype">double</span> <a class="code" href="structlib_c_z_i_1_1_scaling_info.html#a51209385ef9ee539c5f1fad0a507f63b">scaleZ</a>;  </div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    };</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classlib_c_z_i_1_1_i_dimension_info.html">   59</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classlib_c_z_i_1_1_i_dimension_info.html">IDimensionInfo</a></div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    {</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        <span class="keyword">virtual</span> <a class="code" href="namespacelib_c_z_i.html#a55049658acf59d0eddfaebcad16df424">DimensionIndex</a> <a class="code" href="classlib_c_z_i_1_1_i_dimension_info.html#a3aef5c6762b0142fc2665d342e939a9d">GetDimension</a>() <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classlib_c_z_i_1_1_i_dimension_info.html#a2e04b30f6e8877c3ae080b01e5ff994e">GetInterval</a>(<span class="keywordtype">int</span>* start, <span class="keywordtype">int</span>* end) <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;        <span class="keyword">virtual</span> ~<a class="code" href="classlib_c_z_i_1_1_i_dimension_info.html">IDimensionInfo</a>() {}</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    };</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <span class="keyword">class </span><a class="code" href="classlib_c_z_i_1_1_i_channel_display_setting.html">IChannelDisplaySetting</a>;</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="classlib_c_z_i_1_1_i_display_settings.html">   78</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classlib_c_z_i_1_1_i_display_settings.html">IDisplaySettings</a></div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    {</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point.html">   82</a></span>&#160;        <span class="keyword">struct </span><a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point.html">SplineControlPoint</a></div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;        {</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point.html#a1978764701b7179c6e5fd045dc88fe9a">   84</a></span>&#160;            <span class="keywordtype">double</span> <a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point.html#a1978764701b7179c6e5fd045dc88fe9a">x</a>;   </div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point.html#a3cce749fa57f428f61d93f55c617becb">   85</a></span>&#160;            <span class="keywordtype">double</span> <a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point.html#a3cce749fa57f428f61d93f55c617becb">y</a>;   </div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        };</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="classlib_c_z_i_1_1_i_display_settings.html#a8e600e80a4999495c1ab1f637ffb94ff">   89</a></span>&#160;        <span class="keyword">enum class</span> <a class="code" href="classlib_c_z_i_1_1_i_display_settings.html#a8e600e80a4999495c1ab1f637ffb94ff">GradationCurveMode</a></div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        {</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;            <a class="code" href="classlib_c_z_i_1_1_i_display_settings.html#a8e600e80a4999495c1ab1f637ffb94ffa32a843da6ea40ab3b17a3421ccdf671b">Linear</a>,     </div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;            <a class="code" href="classlib_c_z_i_1_1_i_display_settings.html#a8e600e80a4999495c1ab1f637ffb94ffad9cdb0f6e0d556347c10a8695545a4b5">Gamma</a>,      </div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;            <a class="code" href="classlib_c_z_i_1_1_i_display_settings.html#a8e600e80a4999495c1ab1f637ffb94ffa4cff6afc4963881749f7742fbb4d1392">Spline</a>      </div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        };</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html">   97</a></span>&#160;        <span class="keyword">struct </span><a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html">CubicSplineCoefficients</a></div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        {</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a543026ecf7bb3dcfa86d89687d90e6ac">   99</a></span>&#160;            <span class="keywordtype">double</span> <a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a543026ecf7bb3dcfa86d89687d90e6ac">a</a>; </div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a7c7574bd8a5c40eeda3d170ec55a16d3">  100</a></span>&#160;            <span class="keywordtype">double</span> <a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a7c7574bd8a5c40eeda3d170ec55a16d3">b</a>; </div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a46455db9e87f331f748d04a8be4308d4">  101</a></span>&#160;            <span class="keywordtype">double</span> <a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a46455db9e87f331f748d04a8be4308d4">c</a>; </div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a0d9722f64cd3f752dee9074decabd4ab">  102</a></span>&#160;            <span class="keywordtype">double</span> <a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a0d9722f64cd3f752dee9074decabd4ab">d</a>; </div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#acc14d3e8c764bc2fe6c60f66e3a9a42d">  109</a></span>&#160;            <span class="keywordtype">double</span> <a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#acc14d3e8c764bc2fe6c60f66e3a9a42d">Get</a>(<span class="keywordtype">int</span> index)<span class="keyword"> const</span></div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="keyword">            </span>{</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                <span class="keywordflow">switch</span> (index)</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;                {</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;                <span class="keywordflow">case</span> 0:<span class="keywordflow">return</span> this-&gt;<a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a543026ecf7bb3dcfa86d89687d90e6ac">a</a>;</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;                <span class="keywordflow">case</span> 1:<span class="keywordflow">return</span> this-&gt;<a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a7c7574bd8a5c40eeda3d170ec55a16d3">b</a>;</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;                <span class="keywordflow">case</span> 2:<span class="keywordflow">return</span> this-&gt;<a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a46455db9e87f331f748d04a8be4308d4">c</a>;</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;                <span class="keywordflow">case</span> 3:<span class="keywordflow">return</span> this-&gt;<a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a0d9722f64cd3f752dee9074decabd4ab">d</a>;</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;                }</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;                <span class="keywordflow">return</span> std::numeric_limits&lt;double&gt;::quiet_NaN();</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;            }</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        };</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data.html">  124</a></span>&#160;        <span class="keyword">struct </span><a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data.html">SplineData</a></div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        {</div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data.html#a745dd0b033824f68be93d3b038d6ed41">  127</a></span>&#160;            <span class="keywordtype">double</span> <a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data.html#a745dd0b033824f68be93d3b038d6ed41">xPos</a>;</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data.html#a2daa2f1b10f4bf574f13e4fd699c5b33">  130</a></span>&#160;            <a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html">CubicSplineCoefficients</a> <a class="code" href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data.html#a2daa2f1b10f4bf574f13e4fd699c5b33">coefficients</a>;</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        };</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classlib_c_z_i_1_1_i_display_settings.html#af19480abbb7905656e5411bd34d0506d">EnumChannels</a>(std::function&lt;<span class="keywordtype">bool</span>(<span class="keywordtype">int</span> chIndex)&gt; func) <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;        <span class="keyword">virtual</span> std::shared_ptr&lt;libCZI::IChannelDisplaySetting&gt; <a class="code" href="classlib_c_z_i_1_1_i_display_settings.html#ad67ab35e429286d38dd11245eda3dc4c">GetChannelDisplaySettings</a>(<span class="keywordtype">int</span> chIndex) <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        <span class="keyword">virtual</span> ~<a class="code" href="classlib_c_z_i_1_1_i_display_settings.html">IDisplaySettings</a>() {}</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    };</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="classlib_c_z_i_1_1_i_channel_display_setting.html">  151</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classlib_c_z_i_1_1_i_channel_display_setting.html">IChannelDisplaySetting</a></div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    {</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">bool</span>    <a class="code" href="classlib_c_z_i_1_1_i_channel_display_setting.html#a874cb106b686e6f4b7fad2f6dd1b3eed">GetIsEnabled</a>() <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">float</span>   <a class="code" href="classlib_c_z_i_1_1_i_channel_display_setting.html#ad4b5a8fed9cad0b28acbbfed7736a8d0">GetWeight</a>() <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">bool</span>    <a class="code" href="classlib_c_z_i_1_1_i_channel_display_setting.html#a7fd49b4a914738b4640eedef351cdd02">TryGetTintingColorRgb8</a>(<a class="code" href="structlib_c_z_i_1_1_rgb8_color.html">libCZI::Rgb8Color</a>* pColor) <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span>    <a class="code" href="classlib_c_z_i_1_1_i_channel_display_setting.html#a1172fdc6f7c3131d5e6ddf6ab35c6f85">GetBlackWhitePoint</a>(<span class="keywordtype">float</span>* pBlack, <span class="keywordtype">float</span>* pWhite) <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;        <span class="keyword">virtual</span> <a class="code" href="classlib_c_z_i_1_1_i_display_settings.html#a8e600e80a4999495c1ab1f637ffb94ff">IDisplaySettings::GradationCurveMode</a> <a class="code" href="classlib_c_z_i_1_1_i_channel_display_setting.html#abcee850366caccfb3245c84ea6f71287">GetGradationCurveMode</a>() <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">bool</span>    <a class="code" href="classlib_c_z_i_1_1_i_channel_display_setting.html#a37a0c8e3159e6a5e3a9cd0c22b90fd2f">TryGetGamma</a>(<span class="keywordtype">float</span>* gamma)<span class="keyword">const</span> = 0;</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">bool</span>    <a class="code" href="classlib_c_z_i_1_1_i_channel_display_setting.html#ae8a2192fd92015fc6ce59958b598a8cb">TryGetSplineControlPoints</a>(std::vector&lt;libCZI::IDisplaySettings::SplineControlPoint&gt;* ctrlPts) <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">bool</span>    <a class="code" href="classlib_c_z_i_1_1_i_channel_display_setting.html#ae3779bf0fb5b48c8ee3549e2ebb3947f">TryGetSplineData</a>(std::vector&lt;libCZI::IDisplaySettings::SplineData&gt;* data) <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;        <span class="keyword">virtual</span> ~<a class="code" href="classlib_c_z_i_1_1_i_channel_display_setting.html">IChannelDisplaySetting</a>() {}</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;    };</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html">  215</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html">ICziMultiDimensionDocumentInfo</a></div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;    {</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;        <span class="keyword">virtual</span> <a class="code" href="structlib_c_z_i_1_1_general_document_info.html">GeneralDocumentInfo</a> <a class="code" href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#aefea877fc65e9510d9a3127e366cb85c">GetGeneralDocumentInfo</a>() <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;        <span class="keyword">virtual</span> <a class="code" href="structlib_c_z_i_1_1_scaling_info.html">libCZI::ScalingInfo</a> <a class="code" href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#ae94341e3e5824b8c1d5c84928ced2e6c">GetScalingInfo</a>() <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#a23f7b26bd323732fac0d190e9b38b6e3">EnumDimensions</a>(std::function&lt;<span class="keywordtype">bool</span>(<a class="code" href="namespacelib_c_z_i.html#a55049658acf59d0eddfaebcad16df424">DimensionIndex</a>)&gt; enumDimensions) = 0;</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;        <span class="keyword">virtual</span> std::shared_ptr&lt;IDimensionInfo&gt; <a class="code" href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#a1e5d72c39dc22f99e1ee27b21055d3ea">GetDimensionInfo</a>(<a class="code" href="namespacelib_c_z_i.html#a55049658acf59d0eddfaebcad16df424">DimensionIndex</a> dim) = 0;</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;        <span class="keyword">virtual</span> std::shared_ptr&lt;IDisplaySettings&gt; <a class="code" href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#a8aff8239a31b047b737f80be0b2c9bda">GetDisplaySettings</a>() <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;        <span class="keyword">virtual</span> ~<a class="code" href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html">ICziMultiDimensionDocumentInfo</a>() {}</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;</div><div class="line"><a name="l00250"></a><span class="lineno"><a class="line" href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#aede2d6dd6e991151afff77b0cb96834a">  250</a></span>&#160;        std::vector&lt;DimensionIndex&gt; <a class="code" href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#aede2d6dd6e991151afff77b0cb96834a">GetDimensions</a>()</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;        {</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;            std::vector&lt;DimensionIndex&gt; vec;</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;            this-&gt;<a class="code" href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#a23f7b26bd323732fac0d190e9b38b6e3">EnumDimensions</a>([&amp;](<a class="code" href="namespacelib_c_z_i.html#a55049658acf59d0eddfaebcad16df424">DimensionIndex</a> i)-&gt;<span class="keywordtype">bool</span> {vec.push_back(i); <span class="keywordflow">return</span> <span class="keyword">true</span>; });</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;            <span class="keywordflow">return</span> vec;</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;        }</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;    };</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;</div><div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="classlib_c_z_i_1_1_i_czi_metadata.html">  259</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classlib_c_z_i_1_1_i_czi_metadata.html">ICziMetadata</a></div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    {</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;        <span class="keyword">virtual</span> std::string <a class="code" href="classlib_c_z_i_1_1_i_czi_metadata.html#afd73a12ac5a04a725ad9f3d130f4e2de">GetXml</a>() = 0;</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;        <span class="keyword">virtual</span> std::shared_ptr&lt;libCZI::ICziMultiDimensionDocumentInfo&gt; <a class="code" href="classlib_c_z_i_1_1_i_czi_metadata.html#adf1a44d893d1f1aac6639bc39edda5af">GetDocumentInfo</a>() = 0;</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;        <span class="keyword">virtual</span> ~<a class="code" href="classlib_c_z_i_1_1_i_czi_metadata.html">ICziMetadata</a>() {}</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    };</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;}</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;</div><div class="ttc" id="classlib_c_z_i_1_1_i_czi_metadata_html_adf1a44d893d1f1aac6639bc39edda5af"><div class="ttname"><a href="classlib_c_z_i_1_1_i_czi_metadata.html#adf1a44d893d1f1aac6639bc39edda5af">libCZI::ICziMetadata::GetDocumentInfo</a></div><div class="ttdeci">virtual std::shared_ptr&lt; libCZI::ICziMultiDimensionDocumentInfo &gt; GetDocumentInfo()=0</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_channel_display_setting_html_abcee850366caccfb3245c84ea6f71287"><div class="ttname"><a href="classlib_c_z_i_1_1_i_channel_display_setting.html#abcee850366caccfb3245c84ea6f71287">libCZI::IChannelDisplaySetting::GetGradationCurveMode</a></div><div class="ttdeci">virtual IDisplaySettings::GradationCurveMode GetGradationCurveMode() const =0</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_general_document_info_html_a2ac0606c9395217d63c586f9bd356f3e"><div class="ttname"><a href="structlib_c_z_i_1_1_general_document_info.html#a2ac0606c9395217d63c586f9bd356f3e">libCZI::GeneralDocumentInfo::userName</a></div><div class="ttdeci">std::wstring userName</div><div class="ttdoc">Name of the user who created the document. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:41</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_scaling_info_html_a51209385ef9ee539c5f1fad0a507f63b"><div class="ttname"><a href="structlib_c_z_i_1_1_scaling_info.html#a51209385ef9ee539c5f1fad0a507f63b">libCZI::ScalingInfo::scaleZ</a></div><div class="ttdeci">double scaleZ</div><div class="ttdoc">The length of a pixel in y-direction in the unit meters. If unknown/invalid, this value is numeric_li...</div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:55</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info_html_a1e5d72c39dc22f99e1ee27b21055d3ea"><div class="ttname"><a href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#a1e5d72c39dc22f99e1ee27b21055d3ea">libCZI::ICziMultiDimensionDocumentInfo::GetDimensionInfo</a></div><div class="ttdeci">virtual std::shared_ptr&lt; IDimensionInfo &gt; GetDimensionInfo(DimensionIndex dim)=0</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_czi_metadata_html"><div class="ttname"><a href="classlib_c_z_i_1_1_i_czi_metadata.html">libCZI::ICziMetadata</a></div><div class="ttdoc">Representation of the CZI-metadata. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:259</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info_html_aede2d6dd6e991151afff77b0cb96834a"><div class="ttname"><a href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#aede2d6dd6e991151afff77b0cb96834a">libCZI::ICziMultiDimensionDocumentInfo::GetDimensions</a></div><div class="ttdeci">std::vector&lt; DimensionIndex &gt; GetDimensions()</div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:250</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients_html_a7c7574bd8a5c40eeda3d170ec55a16d3"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a7c7574bd8a5c40eeda3d170ec55a16d3">libCZI::IDisplaySettings::CubicSplineCoefficients::b</a></div><div class="ttdeci">double b</div><div class="ttdoc">The coefficient of the square. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:100</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info_html_a8aff8239a31b047b737f80be0b2c9bda"><div class="ttname"><a href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#a8aff8239a31b047b737f80be0b2c9bda">libCZI::ICziMultiDimensionDocumentInfo::GetDisplaySettings</a></div><div class="ttdeci">virtual std::shared_ptr&lt; IDisplaySettings &gt; GetDisplaySettings() const =0</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_display_settings_html_ad67ab35e429286d38dd11245eda3dc4c"><div class="ttname"><a href="classlib_c_z_i_1_1_i_display_settings.html#ad67ab35e429286d38dd11245eda3dc4c">libCZI::IDisplaySettings::GetChannelDisplaySettings</a></div><div class="ttdeci">virtual std::shared_ptr&lt; libCZI::IChannelDisplaySetting &gt; GetChannelDisplaySettings(int chIndex) const =0</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data_html"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data.html">libCZI::IDisplaySettings::SplineData</a></div><div class="ttdoc">The defintion of the (piecewise) spline. The spline starts at xPos which is the normalized position (...</div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:124</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_display_settings_html_a8e600e80a4999495c1ab1f637ffb94ffa32a843da6ea40ab3b17a3421ccdf671b"><div class="ttname"><a href="classlib_c_z_i_1_1_i_display_settings.html#a8e600e80a4999495c1ab1f637ffb94ffa32a843da6ea40ab3b17a3421ccdf671b">libCZI::IDisplaySettings::GradationCurveMode::Linear</a></div><div class="ttdoc">The gradation curve is a straight line (from white point to black point). </div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info_html_a23f7b26bd323732fac0d190e9b38b6e3"><div class="ttname"><a href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#a23f7b26bd323732fac0d190e9b38b6e3">libCZI::ICziMultiDimensionDocumentInfo::EnumDimensions</a></div><div class="ttdeci">virtual void EnumDimensions(std::function&lt; bool(DimensionIndex)&gt; enumDimensions)=0</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point_html_a3cce749fa57f428f61d93f55c617becb"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point.html#a3cce749fa57f428f61d93f55c617becb">libCZI::IDisplaySettings::SplineControlPoint::y</a></div><div class="ttdeci">double y</div><div class="ttdoc">The normalized y-coordinate of a spline control point. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:85</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients_html_a46455db9e87f331f748d04a8be4308d4"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a46455db9e87f331f748d04a8be4308d4">libCZI::IDisplaySettings::CubicSplineCoefficients::c</a></div><div class="ttdeci">double c</div><div class="ttdoc">The coefficient of the linear term. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:101</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info_html_aefea877fc65e9510d9a3127e366cb85c"><div class="ttname"><a href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#aefea877fc65e9510d9a3127e366cb85c">libCZI::ICziMultiDimensionDocumentInfo::GetGeneralDocumentInfo</a></div><div class="ttdeci">virtual GeneralDocumentInfo GetGeneralDocumentInfo() const =0</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point_html_a1978764701b7179c6e5fd045dc88fe9a"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point.html#a1978764701b7179c6e5fd045dc88fe9a">libCZI::IDisplaySettings::SplineControlPoint::x</a></div><div class="ttdeci">double x</div><div class="ttdoc">The normalized x-coordinate of a spline control point. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:84</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_general_document_info_html_ad6c87c00c5039477b2887a2bd8099469"><div class="ttname"><a href="structlib_c_z_i_1_1_general_document_info.html#ad6c87c00c5039477b2887a2bd8099469">libCZI::GeneralDocumentInfo::description</a></div><div class="ttdeci">std::wstring description</div><div class="ttdoc">A text describing the document. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:42</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_general_document_info_html_a633f48b2bd3356c426a0716ffbae45ae"><div class="ttname"><a href="structlib_c_z_i_1_1_general_document_info.html#a633f48b2bd3356c426a0716ffbae45ae">libCZI::GeneralDocumentInfo::comment</a></div><div class="ttdeci">std::wstring comment</div><div class="ttdoc">A text with comments on the document. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:43</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients_html_a543026ecf7bb3dcfa86d89687d90e6ac"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a543026ecf7bb3dcfa86d89687d90e6ac">libCZI::IDisplaySettings::CubicSplineCoefficients::a</a></div><div class="ttdeci">double a</div><div class="ttdoc">The coefficient of the cube. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:99</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_display_settings_html"><div class="ttname"><a href="classlib_c_z_i_1_1_i_display_settings.html">libCZI::IDisplaySettings</a></div><div class="ttdoc">The display settings. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:78</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients_html_acc14d3e8c764bc2fe6c60f66e3a9a42d"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#acc14d3e8c764bc2fe6c60f66e3a9a42d">libCZI::IDisplaySettings::CubicSplineCoefficients::Get</a></div><div class="ttdeci">double Get(int index) const</div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:109</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data_html_a745dd0b033824f68be93d3b038d6ed41"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data.html#a745dd0b033824f68be93d3b038d6ed41">libCZI::IDisplaySettings::SplineData::xPos</a></div><div class="ttdeci">double xPos</div><div class="ttdoc">The (normalized) position for which this spline definition is valid. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:127</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_general_document_info_html_ab35797e1b6c3a8e5c8476b43672180bc"><div class="ttname"><a href="structlib_c_z_i_1_1_general_document_info.html#ab35797e1b6c3a8e5c8476b43672180bc">libCZI::GeneralDocumentInfo::title</a></div><div class="ttdeci">std::wstring title</div><div class="ttdoc">Title of the document. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:40</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_scaling_info_html"><div class="ttname"><a href="structlib_c_z_i_1_1_scaling_info.html">libCZI::ScalingInfo</a></div><div class="ttdoc">Scaling information - gives the size of a pixel. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:50</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_dimension_info_html"><div class="ttname"><a href="classlib_c_z_i_1_1_i_dimension_info.html">libCZI::IDimensionInfo</a></div><div class="ttdoc">Base class for information about the dimension. (not yet implemented) </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:59</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients_html_a0d9722f64cd3f752dee9074decabd4ab"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html#a0d9722f64cd3f752dee9074decabd4ab">libCZI::IDisplaySettings::CubicSplineCoefficients::d</a></div><div class="ttdeci">double d</div><div class="ttdoc">The constant. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:102</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data_html_a2daa2f1b10f4bf574f13e4fd699c5b33"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_data.html#a2daa2f1b10f4bf574f13e4fd699c5b33">libCZI::IDisplaySettings::SplineData::coefficients</a></div><div class="ttdeci">CubicSplineCoefficients coefficients</div><div class="ttdoc">The spline coefficients for this piece. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:130</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_rgb8_color_html"><div class="ttname"><a href="structlib_c_z_i_1_1_rgb8_color.html">libCZI::Rgb8Color</a></div><div class="ttdoc">A structure representing an R-G-B-color triple (as bytes). </div><div class="ttdef"><b>Definition:</b> libCZI_Pixels.h:110</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients_html"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_cubic_spline_coefficients.html">libCZI::IDisplaySettings::CubicSplineCoefficients</a></div><div class="ttdoc">The coefficients of a cubic spline defined by . </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:97</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_scaling_info_html_a1e3eaed2c197331a7f47db7c6a89d930"><div class="ttname"><a href="structlib_c_z_i_1_1_scaling_info.html#a1e3eaed2c197331a7f47db7c6a89d930">libCZI::ScalingInfo::scaleY</a></div><div class="ttdeci">double scaleY</div><div class="ttdoc">The length of a pixel in y-direction in the unit meters. If unknown/invalid, this value is numeric_li...</div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:54</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_dimension_info_html_a2e04b30f6e8877c3ae080b01e5ff994e"><div class="ttname"><a href="classlib_c_z_i_1_1_i_dimension_info.html#a2e04b30f6e8877c3ae080b01e5ff994e">libCZI::IDimensionInfo::GetInterval</a></div><div class="ttdeci">virtual void GetInterval(int *start, int *end) const =0</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_channel_display_setting_html_a874cb106b686e6f4b7fad2f6dd1b3eed"><div class="ttname"><a href="classlib_c_z_i_1_1_i_channel_display_setting.html#a874cb106b686e6f4b7fad2f6dd1b3eed">libCZI::IChannelDisplaySetting::GetIsEnabled</a></div><div class="ttdeci">virtual bool GetIsEnabled() const =0</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_display_settings_html_a8e600e80a4999495c1ab1f637ffb94ffa4cff6afc4963881749f7742fbb4d1392"><div class="ttname"><a href="classlib_c_z_i_1_1_i_display_settings.html#a8e600e80a4999495c1ab1f637ffb94ffa4cff6afc4963881749f7742fbb4d1392">libCZI::IDisplaySettings::GradationCurveMode::Spline</a></div><div class="ttdoc">The gradation curve is defined by piecewise splines. </div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_channel_display_setting_html_ae8a2192fd92015fc6ce59958b598a8cb"><div class="ttname"><a href="classlib_c_z_i_1_1_i_channel_display_setting.html#ae8a2192fd92015fc6ce59958b598a8cb">libCZI::IChannelDisplaySetting::TryGetSplineControlPoints</a></div><div class="ttdeci">virtual bool TryGetSplineControlPoints(std::vector&lt; libCZI::IDisplaySettings::SplineControlPoint &gt; *ctrlPts) const =0</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_general_document_info_html_afc37e71ba6b59171c877c17749b91aa3"><div class="ttname"><a href="structlib_c_z_i_1_1_general_document_info.html#afc37e71ba6b59171c877c17749b91aa3">libCZI::GeneralDocumentInfo::name</a></div><div class="ttdeci">std::wstring name</div><div class="ttdoc">Name of the document. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:39</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_general_document_info_html_adee12c915203b5bd17d150f362320e83"><div class="ttname"><a href="structlib_c_z_i_1_1_general_document_info.html#adee12c915203b5bd17d150f362320e83">libCZI::GeneralDocumentInfo::keywords</a></div><div class="ttdeci">std::wstring keywords</div><div class="ttdoc">List of keywords (should be separated by semicolons) </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:44</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_channel_display_setting_html_a7fd49b4a914738b4640eedef351cdd02"><div class="ttname"><a href="classlib_c_z_i_1_1_i_channel_display_setting.html#a7fd49b4a914738b4640eedef351cdd02">libCZI::IChannelDisplaySetting::TryGetTintingColorRgb8</a></div><div class="ttdeci">virtual bool TryGetTintingColorRgb8(libCZI::Rgb8Color *pColor) const =0</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_dimension_info_html_a3aef5c6762b0142fc2665d342e939a9d"><div class="ttname"><a href="classlib_c_z_i_1_1_i_dimension_info.html#a3aef5c6762b0142fc2665d342e939a9d">libCZI::IDimensionInfo::GetDimension</a></div><div class="ttdeci">virtual DimensionIndex GetDimension() const =0</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info_html_ae94341e3e5824b8c1d5c84928ced2e6c"><div class="ttname"><a href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html#ae94341e3e5824b8c1d5c84928ced2e6c">libCZI::ICziMultiDimensionDocumentInfo::GetScalingInfo</a></div><div class="ttdeci">virtual libCZI::ScalingInfo GetScalingInfo() const =0</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_display_settings_html_af19480abbb7905656e5411bd34d0506d"><div class="ttname"><a href="classlib_c_z_i_1_1_i_display_settings.html#af19480abbb7905656e5411bd34d0506d">libCZI::IDisplaySettings::EnumChannels</a></div><div class="ttdeci">virtual void EnumChannels(std::function&lt; bool(int chIndex)&gt; func) const =0</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_czi_metadata_html_afd73a12ac5a04a725ad9f3d130f4e2de"><div class="ttname"><a href="classlib_c_z_i_1_1_i_czi_metadata.html#afd73a12ac5a04a725ad9f3d130f4e2de">libCZI::ICziMetadata::GetXml</a></div><div class="ttdeci">virtual std::string GetXml()=0</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_channel_display_setting_html_a37a0c8e3159e6a5e3a9cd0c22b90fd2f"><div class="ttname"><a href="classlib_c_z_i_1_1_i_channel_display_setting.html#a37a0c8e3159e6a5e3a9cd0c22b90fd2f">libCZI::IChannelDisplaySetting::TryGetGamma</a></div><div class="ttdeci">virtual bool TryGetGamma(float *gamma) const =0</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_general_document_info_html_a26ded0bae7ffb1bc68fef7f1862c0508"><div class="ttname"><a href="structlib_c_z_i_1_1_general_document_info.html#a26ded0bae7ffb1bc68fef7f1862c0508">libCZI::GeneralDocumentInfo::rating</a></div><div class="ttdeci">int rating</div><div class="ttdoc">An integer specifying a &quot;five-star-rating&quot; (should be between 0 and 5). </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:45</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_channel_display_setting_html_ae3779bf0fb5b48c8ee3549e2ebb3947f"><div class="ttname"><a href="classlib_c_z_i_1_1_i_channel_display_setting.html#ae3779bf0fb5b48c8ee3549e2ebb3947f">libCZI::IChannelDisplaySetting::TryGetSplineData</a></div><div class="ttdeci">virtual bool TryGetSplineData(std::vector&lt; libCZI::IDisplaySettings::SplineData &gt; *data) const =0</div></div>
<div class="ttc" id="namespacelib_c_z_i_html"><div class="ttname"><a href="namespacelib_c_z_i.html">libCZI</a></div><div class="ttdoc">External interfaces, classes, functions and structs are found in the namespace &quot;libCZI&quot;. </div><div class="ttdef"><b>Definition:</b> libCZI.h:44</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info_html"><div class="ttname"><a href="classlib_c_z_i_1_1_i_czi_multi_dimension_document_info.html">libCZI::ICziMultiDimensionDocumentInfo</a></div><div class="ttdoc">The top-level interface for the CZI-metadata object. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:215</div></div>
<div class="ttc" id="namespacelib_c_z_i_html_a55049658acf59d0eddfaebcad16df424"><div class="ttname"><a href="namespacelib_c_z_i.html#a55049658acf59d0eddfaebcad16df424">libCZI::DimensionIndex</a></div><div class="ttdeci">DimensionIndex</div><div class="ttdoc">Values that represent dimension indexes. </div><div class="ttdef"><b>Definition:</b> libCZI_DimCoordinate.h:34</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_display_settings_html_a8e600e80a4999495c1ab1f637ffb94ffad9cdb0f6e0d556347c10a8695545a4b5"><div class="ttname"><a href="classlib_c_z_i_1_1_i_display_settings.html#a8e600e80a4999495c1ab1f637ffb94ffad9cdb0f6e0d556347c10a8695545a4b5">libCZI::IDisplaySettings::GradationCurveMode::Gamma</a></div><div class="ttdoc">The gradation curve is defined by a gamma. </div></div>
<div class="ttc" id="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point_html"><div class="ttname"><a href="structlib_c_z_i_1_1_i_display_settings_1_1_spline_control_point.html">libCZI::IDisplaySettings::SplineControlPoint</a></div><div class="ttdoc">The (normalized) control points of a spline. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:82</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_channel_display_setting_html"><div class="ttname"><a href="classlib_c_z_i_1_1_i_channel_display_setting.html">libCZI::IChannelDisplaySetting</a></div><div class="ttdoc">The display-settings for a channel. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:151</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_general_document_info_html"><div class="ttname"><a href="structlib_c_z_i_1_1_general_document_info.html">libCZI::GeneralDocumentInfo</a></div><div class="ttdoc">General document information - corresponding to Information/Document. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:36</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_channel_display_setting_html_a1172fdc6f7c3131d5e6ddf6ab35c6f85"><div class="ttname"><a href="classlib_c_z_i_1_1_i_channel_display_setting.html#a1172fdc6f7c3131d5e6ddf6ab35c6f85">libCZI::IChannelDisplaySetting::GetBlackWhitePoint</a></div><div class="ttdeci">virtual void GetBlackWhitePoint(float *pBlack, float *pWhite) const =0</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_channel_display_setting_html_ad4b5a8fed9cad0b28acbbfed7736a8d0"><div class="ttname"><a href="classlib_c_z_i_1_1_i_channel_display_setting.html#ad4b5a8fed9cad0b28acbbfed7736a8d0">libCZI::IChannelDisplaySetting::GetWeight</a></div><div class="ttdeci">virtual float GetWeight() const =0</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_scaling_info_html_ad78c8dd0c50767ea6004f513379744a3"><div class="ttname"><a href="structlib_c_z_i_1_1_scaling_info.html#ad78c8dd0c50767ea6004f513379744a3">libCZI::ScalingInfo::scaleX</a></div><div class="ttdeci">double scaleX</div><div class="ttdoc">The length of a pixel in x-direction in the unit meters. If unknown/invalid, this value is numeric_li...</div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:53</div></div>
<div class="ttc" id="structlib_c_z_i_1_1_general_document_info_html_a831ea6520302e16ab56615c3aee316ec"><div class="ttname"><a href="structlib_c_z_i_1_1_general_document_info.html#a831ea6520302e16ab56615c3aee316ec">libCZI::GeneralDocumentInfo::creationDateTime</a></div><div class="ttdeci">std::wstring creationDateTime</div><div class="ttdoc">The creation date of the document (formatted as xml-datatype &quot;dateTime&quot;). </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:46</div></div>
<div class="ttc" id="classlib_c_z_i_1_1_i_display_settings_html_a8e600e80a4999495c1ab1f637ffb94ff"><div class="ttname"><a href="classlib_c_z_i_1_1_i_display_settings.html#a8e600e80a4999495c1ab1f637ffb94ff">libCZI::IDisplaySettings::GradationCurveMode</a></div><div class="ttdeci">GradationCurveMode</div><div class="ttdoc">Values that represent the gradation curve modes. </div><div class="ttdef"><b>Definition:</b> libCZI_Metadata.h:89</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_21e977e93a9d37f41c2225f78f35f145.html">libCZI</a></li><li class="navelem"><b>libCZI_Metadata.h</b></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
  </ul>
</div>
</body>
</html>
